package devstar_v1_0

// 构建 DevStar Studio v1.0 所需数据库类型
// 从 dv1 到 dv2

import (
	devcontainer_models "code.gitea.io/gitea/models/devstar_devcontainer"
	"xorm.io/xorm"
)

// InitializeDevContainerDbTables 初始化 devContainer 相关数据库字段
func InitializeDevContainerDbTables(x *xorm.Engine) error {

	var err error

	// 1. 初始化 devContainer 表
	if err = addDBDevStarDevContainer(x); err != nil {
		return err
	}

	return nil
}

// addDBDevStarDevContainer 1. 初始化 devContainer 与 Repository 一对一关系表
func addDBDevStarDevContainer(x *xorm.Engine) error {

	err := x.Sync(new(devcontainer_models.DevstarDevcontainer))
	if err != nil {
		return ErrMigrateDevstarDatabase{
			Step:    "create table 'devstar_devcontainer'",
			Message: err.Error(),
		}
	}

	return nil
}
